home *** CD-ROM | disk | FTP | other *** search
/ IRIX 5.3 for Indy R4400 / IRIX 5.3 for Indy R4400 175MHz.img / dist / eoe2.idb / usr / bin / uuto.z / uuto
Text File  |  1995-02-28  |  2KB  |  93 lines

  1. #!/bin/sh
  2.  
  3. # "$Revision: 1.3 $"
  4.  
  5. a=""
  6. f=""
  7. d=""
  8. sub=""
  9. export UUP
  10. mysys=`uuname -l`
  11. mesg="Usage: $0 [-m -p] files remote!user"
  12. if test  $# -lt 1
  13.     then
  14.         echo $mesg
  15.         exit
  16. fi
  17. trap "trap '' 0; exit" 0 1 2 13 15
  18. copy=0
  19. #    get options
  20. while true
  21. do
  22.     case $1 in
  23.      -m)    a="$a $1" sub="$sub -m" ;;
  24.      -p)    copy=1 sub="$sub -p" ;;
  25.      -*)    echo $mesg; exit;;
  26.      *)    break ;;
  27.     esac
  28.     shift
  29. done
  30. #    be sure have both files and destination
  31. if test $# -eq 1
  32. then
  33.     echo $mesg
  34.     exit 2
  35. fi
  36. #    get file names
  37. while test $#  -gt 1
  38. do
  39.     if test -d "$1" -a {"$1" = "." -o "$1" = ".."}
  40.         then shift; continue
  41.     elif test -r "$1" -a -f "$1"
  42.         then f="$f $1"
  43.     elif test -r "$1" -a -d "$1"
  44.         then d="$d $1"
  45.     elif test "$UUP" = ""
  46.         then echo "$1: file/directory not found"; exit
  47.     fi
  48.     shift
  49. done
  50. #    the recipient arg: remote!user
  51. #    remote may be omitted (default is this machine)
  52. #    must have at least !user
  53. remote=`expr $1 : '\(.*\)!'`
  54. user=`expr $1 : '.*!\(.*\)'`
  55. if test -z "$user"
  56. then
  57.     echo "$0: incomplete destination -- must specify user"
  58.     echo "$mesg"
  59.     exit 2
  60. fi
  61. if test 1 -eq "$copy"
  62.     then a="$a -C"
  63. fi
  64.     a="$a -d -n$user"
  65. error=1
  66. if test -n "$d" -a -n "$user"
  67. then
  68.     for i in $d
  69.     do
  70.         ( cd $i; UUP="$UUP/$i"
  71.         for j in `ls -a`
  72.         do
  73.             if test "$j" = "." -o "$j" = ".."; then continue;
  74.             else
  75.             FILES="$FILES $j"
  76.             fi
  77.         done
  78.         if test "$FILES"; then
  79.         uuto $sub $FILES $1;fi)
  80.     error=0
  81.     done
  82. fi
  83. if test -n "$f" -a -n "$user"
  84. then
  85.     uucp $a $f $remote!~/receive/$user/$mysys$UUP/
  86.     error=0
  87. fi
  88. if test $error = 1
  89. then 
  90.     echo $mesg
  91.     exit 2
  92. fi
  93.